const {request} = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    banner: [],
    items: [],
    cateItems: [],
    page: 1,
    pageSize: 5,
    loading: false, // 是否处于 下拉加载中状态
    hasMore: true // 是否还有新的数据
  },
  // 轮播图的请求
  fetchBanner() {
    request('/banner/list').then(res => {
  if(res.data.code === 0){
this.setData({
  banner:res.data.data
})
  }
})
  },
  //商品分类列表的请求
  fetchGoods(){
    request('/shop/goods/category/all').then(res => {
      if(res.data.code === 0) {
        this.setData({
          items: res.data.data
        })
      }
    })
  },
  //首页商品列表请求
  fetchCate(){
  this.setData({
    loading: true
  })
 
    request('/shop/goods/list/v2',{
      data:{
        page:this.data.page,
        pageSize: this.data.pageSize
      },
      method: 'post'
    }).then(res => {
      this.setData({
        loading: false
      })
      if(res.data.code === 0){
        this.setData({
          cateItems: [
            ...this.data.cateItems,
            ...res.data.data.result
          ]
        })
      }
      if(res.data.code === 700){
        this.setData({
          hasMore: false
        })
      }
    })
  },
   //点击购物车跳转购物页
   cartIcon(e) {
    wx.switchTab({
     url: '/pages/cart/cart?id='+e.currentTarget.dataset.id,
   })
  const id = e.currentTarget.dataset.id
   request('/shopping-cart/add',{
     method: 'post',
     data: {
       goodsId: id,
       number: 1
     }
   }).then(res => {
     if (res.data.code === 0){
       console.log('添加购物车');
     }
   })
   },
  /**
   * 生命周期函数--监听页面加载
   */
  // 点击商品跳转商品详情事件
  listItem(e) {
    const {id} = e.currentTarget.dataset;
  wx.navigateTo({
    url: "/pages/detail/detail?id="+id,
  })
  },
  onLoad() {
this.fetchBanner()
this.fetchGoods()
this.fetchCate()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
this.setData({
  page:1,
  cateItems: [],
  hasMore: true
})
this.fetchCate()
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    //判断是否正在加载，以及有没有数据
    if(this.data.loading||!this.data.hasMore) {
      // 正在加载中
      return false
    }
    this.setData({
      page: this.data.page+1
    })
    this.fetchCate()
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})